package io.shuttle.mbe.api.types

typealias VoidFunction = () -> Unit
typealias VoidReturnFunction<R> = () -> R
typealias Value1Function<T1> = (T1) -> Unit
typealias Value1ReturnFunction<T1, R> = (T1) -> R
typealias Value2Function<T1, T2> = (T1, T2) -> Unit
typealias Value2ReturnFunction<T1, T2, R> = (T1, T2) -> R
typealias Value3Function<T1, T2, T3> = (T1, T2, T3) -> Unit
typealias Value3ReturnFunction<T1, T2, T3, R> = (T1, T2, T3) -> R
typealias Value4Function<T1, T2, T3, T4> = (T1, T2, T3, T4) -> Unit
typealias Value4ReturnFunction<T1, T2, T3, T4, R> = (T1, T2, T3, T4) -> R
typealias Value5Function<T1, T2, T3, T4, T5> = (T1, T2, T3, T4, T5) -> Unit